********************************************************************************
**
** Replication  Data & Syntax 													 
** WAHL ZWEITER KLASSE? DETERMINANTEN DER WAHLBETEILIGUNG  BEI 
** INTEGRATIONSRATSWAHLEN IN NORDRHEIN-WESTFALEN				  
** Authors: Paul Vierus & Conrad Ziller	& Nicole Marx						 				
** forthcoming in Kölner Zeitschrift für Soziologie und Sozialpsychologie													  	
** Date: 16.01.2023													  
**																			 
********************************************************************************

*In Zeile 24 muss der Pfad des Arbeitsverzeichnisses des Datensatzes eingefügt werden. 


//*-----Ado-Pakete installieren
****************************************************************************************************
****************************************************************************************************	
	capt ssc install marhis
	capt ssc install estout
	capt ssc install asdoc
	capt ssc install blindschemes

//Arbeitsverzeichnis wechseln
	cd "PFAD"

//Datensatz laden
	use VZM_Integrationsratswahlen_Replikation_Dataset.dta, clear						

//*-----Tabelle 1 - Zusammenfassung der verwendeten Daten
****************************************************************************************************
****************************************************************************************************

	asdoc tabstat turnout_2020 turnout_2014 unempl_2019 population_2019  share_afd_2020 erreich_bev_2017 unempl_foreign_2020 einbürgerung_rel_2019 ///
			ausl_share_2019 ratio_seats big_parties parties_eligible  wahlbet_diff wahlbet_kommunal_2014 ///
			std_turnout_2014 std_unempl_2019 std_population_2019  std_share_afd_2020 std_erreich_bev_2017 ///
			std_unempl_foreign_2020 std_einbürgerung_rel_2019 std_ausl_share_2019 std_ratio_seats std_parties_eligible ///
			std_wahlbet_diff std_wahlbet_kommunal_2014 ///
			, statistics(mean sd min max) fs(8) replace dec(2) save(VZM_Integrwahlen_Tabelle_1.rtf) 


//*-----Tabelle 2 - Regressionsmodelle
****************************************************************************************************
****************************************************************************************************	
			
	//M1
		reg turnout_2020   std_unempl_2019 std_population_2019  std_share_afd_2020 std_erreich_bev_2017 , vce(robust)
		eststo std1	

	//M2		 
		reg turnout_2020   std_unempl_2019 std_population_2019  std_share_afd_2020   std_erreich_bev_2017 ///
						std_unempl_foreign_2020 std_einbürgerung_rel_2019  std_ausl_share_2019 , vce(robust)
		eststo std2
		
	//M3		
		reg turnout_2020   std_unempl_2019 std_population_2019  std_share_afd_2020   std_erreich_bev_2017 ///
						std_unempl_foreign_2020 std_einbürgerung_rel_2019  std_ausl_share_2019   ///
						std_ratio_seats big_parties std_parties_eligible , vce(robust)
	
		eststo std3	
	
	//M4
		reg turnout_2020   std_unempl_2019 std_population_2019  std_share_afd_2020 std_wahlbet_diff std_wahlbet_kommunal_2014 std_erreich_bev_2017 ///
						std_unempl_foreign_2020 std_einbürgerung_rel_2019  std_ausl_share_2019    ///
						std_ratio_seats big_parties std_parties_eligible , vce(robust)					
						
		eststo std4				
	
	//M5
		reg turnout_2020   std_unempl_2019 std_population_2019  std_share_afd_2020 std_wahlbet_diff std_wahlbet_kommunal_2014 std_erreich_bev_2017 ///
						std_unempl_foreign_2020 std_einbürgerung_rel_2019  std_ausl_share_2019    ///
						std_ratio_seats big_parties std_parties_eligible  c.std_wahlbet_kommunal_2014#c.std_wahlbet_diff	, vce(robust) 					
		
		eststo std5			
		
	//Lagged Variable Modelle (LDV) 
	//M6 	
		reg turnout_2020  std_turnout_2014  std_unempl_2019 std_population_2019  std_share_afd_2020 std_wahlbet_diff std_wahlbet_kommunal_2014 std_erreich_bev_2017 ///
						std_unempl_foreign_2020 std_einbürgerung_rel_2019  std_ausl_share_2019   ///
						std_ratio_seats big_parties std_parties_eligible , vce(robust)
	
		eststo std6_ldv	

	//M7 	
		reg turnout_2020 std_turnout_2014  std_unempl_2019 std_population_2019  std_share_afd_2020 std_wahlbet_diff std_wahlbet_kommunal_2014 std_erreich_bev_2017 ///
						std_unempl_foreign_2020 std_einbürgerung_rel_2019  std_ausl_share_2019    ///
						std_ratio_seats big_parties std_parties_eligible  c.std_wahlbet_kommunal_2014#c.std_wahlbet_diff , vce(robust)
		eststo std7_ldv				
	

		//Tabellenausgabe
		estout std1 std2 std3 std4  std5 std6_ldv std7_ldv, cells(b(star fmt(%9.3f)) se(par)) ///
			stats(r2_a N aic, fmt(%9.3f %9.0g) labels(Adj. R-squared)) legend collabels(none) varlabels(_cons Constant) varwidth(35)

		esttab  std1 std2 std3 std4 std5 std6_ldv std7_ldv  using "VZM_Integrwahlen_Tabelle_2.rtf", ///
			stats(r2_a N, fmt(%9.3f %9.0g) labels(Adj. R-squared)) varwidth(35) ///
			collabels(none) legend replace se(%3.2f) b(3) nonotes nomtitles onecell nogaps transform(ln*: exp(2*@) exp(2*@))  star(* 0.05 ** 0.01 *** 0.001)

//*-----Abbildung 1 - Vorhergesagte Werte
****************************************************************************************************
****************************************************************************************************

		//Regression mit unstandardisierten Variablen um die Interpretation der Achsen zu erleichtern
		reg turnout_2020  unempl_2019 population_2019  share_afd_2020 wahlbet_diff wahlbet_kommunal_2014 erreich_bev_2017 ///
						unempl_foreign_2020 einbürgerung_rel_2019  ausl_share_2019   ///
						ratio_seats big_parties parties_eligible c.wahlbet_kommunal_2014#c.wahlbet_diff , vce(robust)
	
		//Margins berechnen
		margins, at(wahlbet_diff=(-4(1)9.2) wahlbet_kommunal_2014=(44 60)) vsquish
		
		//Marginsplot ausgabe
		marginsplot,   x(wahlbet_diff) recastci(rline) xlabel(-4(1)9.2)  scheme(plotplain) ytitle("Konditionale Vorhersagewerte (Wahlbet. Integrationsräte)", size(small)) title("") xtitle("Veränderung Wahlbet. Kommunalwahl", size(mediumlarge)) legend(position(6))
			
		graph export VZM_Integrwahlen_Predicted_Values_Abb_1.png, replace		
		graph export VZM_Integrwahlen_Predicted_Values_Abb_1.ps, replace		
		
			

//*-----Appendix - Tabelle A1 - Korrelationsmatrix
****************************************************************************************************
****************************************************************************************************
	
		asdoc cor turnout_2020 turnout_2014 unempl_2019 population_2019  share_afd_2020 wahlbet_diff wahlbet_kommunal_2014 erreich_bev_2017 ///
						unempl_foreign_2020 einbürgerung_rel_2019  ausl_share_2019   ///
						ratio_seats big_parties parties_eligible   ///
						, fs(8) replace dec(2) save(VZM_Integrwahlen_Appendix_Tabelle_A1.rtf) 




//*-----Appendix - Tabelle A2 - Zusätzliche Analyse 
****************************************************************************************************	
****************************************************************************************************

	//Modell A1 
		reg turnout_2020   std_unempl_2019 std_population_2019  std_share_afd_2020  std_erreich_bev_2017  std_unempl_foreign_2020 std_einbürgerung_rel_2019 ///
			std_share_griechisch_1987 std_share_italienisch_1987 std_share_jugo_1987 std_share_türk_1987 std_share_eg_1987 std_share_sonst_1987 ///
			std_ratio_seats  big_parties std_parties_eligible std_wahlbet_kommunal_2014 std_wahlbet_diff ///
			c.std_wahlbet_kommunal_2014#c.std_wahlbet_diff	, vce(robust)					 
		eststo std_appendix_1
		
		
	//Modell A2 
		reg turnout_2020   std_unempl_2019 std_population_2019  std_share_afd_2020  std_erreich_bev_2017  std_unempl_foreign_2020 std_einbürgerung_rel_2019 ///
			std_ausl_share_2019	fract_1987	std_ratio_seats  big_parties std_parties_eligible std_wahlbet_kommunal_2014 std_wahlbet_diff ///
			c.std_wahlbet_kommunal_2014#c.std_wahlbet_diff, vce(robust)							
		eststo std_appendix_2	
		
		
	//Modell A3 
		reg turnout_2020   std_unempl_2019 std_population_2019  std_share_afd_2020  std_erreich_bev_2017  std_unempl_foreign_2020 std_einbürgerung_rel_2019 ///
			std_ausl_share_2019	std_ratio_seats nr_big_parties std_parties_eligible std_wahlbet_kommunal_2014 std_wahlbet_diff ///
			c.std_wahlbet_kommunal_2014#c.std_wahlbet_diff, vce(robust)			
		eststo std_appendix_3
			
	
	//Tabellenausgabe
	estout std_appendix_1 std_appendix_2 std_appendix_3 , cells(b(star fmt(%9.3f)) se(par))  ///
	stats(r2_a N aic, fmt(%9.3f %9.0g) labels(Adj. R-squared)) legend collabels(none) varlabels(_cons Constant) varwidth(35)
	
	
	esttab  std_appendix_1 std_appendix_2 std_appendix_3    using "VZM_Integrwahlen_Appendix_Tabelle_A2.rtf", ///
		stats(r2_a N, fmt(%9.3f %9.0g) labels(Adj. R-squared)) varwidth(35) ///
		collabels(none) legend replace se(%3.2f) b(3) nonotes nomtitles onecell nogaps transform(ln*: exp(2*@) exp(2*@))
			   	

//*-----Appendix - Abbildung A1 - Marginaler Effektplot
****************************************************************************************************	
****************************************************************************************************

	//Regression mit unstandardisierten Variablen um die Interpretation der Achsen zu erleichtern
		reg turnout_2020  unempl_2019 population_2019  share_afd_2020 wahlbet_diff wahlbet_kommunal_2014 erreich_bev_2017 ///
						unempl_foreign_2020 einbürgerung_rel_2019  ausl_share_2019   ///
						ratio_seats big_parties parties_eligible c.wahlbet_kommunal_2014#c.wahlbet_diff,  vce(robust)
	
	//Ausgabe Interaktionseffekt mittels Ado marhis			
		set scheme plotplain
		marhis wahlbet_kommunal_2014, mar(wahlbet_diff) 
			graph export VZM_Integrwahlen_Appendix_Abbildung_A1.png, replace		
			graph export VZM_Integrwahlen_Appendix_Abbildung_A1.ps, replace		

			
